from cases.case_config import CasesConfig
from cases.case_fail_config import CaseFailConfig
from commons.common import get_com
from commons.public_gobals import PublicGlobals
from files.file_ini import FileIni
from files.file_json_global import FileJsonGlobal
from files.file_json_limit_args import FileJsonLimitArgs
from files.report_xlsx import ReportXlsx
from windows import root
from windows.case_main_window import CaseMainFrame
from windows.left_windows.left_window import LeftFrame



class RunsStart:
    def __init__(self):
        self.setup_ui()



    def setup_ui(self):
        FileJsonGlobal.init()       # 全局变量文件数据读取
        PublicGlobals.init()        # 全局变量加载
        # get_com()
        # print(PublicGlobals.__dict__)
        FileIni.init()          # INI文件配置初始化
        CasesConfig.case_init()             # 用例配置初始化 ---- 有文件读文件，没有文件使用默认值
        FileJsonLimitArgs.init()            # 初始化limit参数 ---- 生成配置文件。
        CaseFailConfig.init()       # 初始化失败用例排行数据
        ReportXlsx.init()       # xlsx文件-测试报告初始化
        # input()
        left_frame = LeftFrame(root, width=200, highlightbackground="grey", highlightthickness=2)
        left_frame.pack(side='left', fill='y', padx=5, pady=5)
        left_frame.pack_propagate(False)  # 长宽定死，不再变化
        # input()
        main_frame = CaseMainFrame(root, highlightbackground="grey", highlightthickness=2)
        main_frame.pack(side='left', padx=5, pady=5, expand=True, fill='both')
        root.mainloop()